package com.studydemo.controller;

import com.studydemo.dao.entity.UUserOperateLog;
import com.studydemo.service.UUserOperateLogService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.Date;

/**
 * @author 无与伦比
 * @version 1.0
 * @date 2021/2/19 22:08
 */
@RestController
@RequestMapping("/UserOperateLog/")
public class UserOperateLogController {

    @Autowired
    private UUserOperateLogService uUserOperateLogService;


    @PostMapping("UserOperateLog")
//    @Transactional(readOnly = true) //只读,不能更新,删除
//    @Transactional(propagation= Propagation.REQUIRED) // 如果有事务,那么加入事务,没有的话新建一个(不写的情况下)

    // 下面是事务传播行为
//    @Transactional(propagation=Propagation.NOT_SUPPORTED) // 容器不为这个方法开启事务 , 此方法不开启事务，以非事务方式运行，如果当前存在事务，则把当前事务挂起。
//    @Transactional(propagation = Propagation.REQUIRED) // 如果当前存在事务，则加入该事务；如果当前没有事务，则创建一个新的事务。（默认）
    public String updateUserOperateLog(){
        UUserOperateLog uUserOperateLog = uUserOperateLogService.selectById(1);

        uUserOperateLog.setContent("33333333333333333");
        uUserOperateLog.setUpdateTime(new Date());
        uUserOperateLogService.updateById(uUserOperateLog);
        System.out.println(1/0);

        return "1";

    }

}
